package lumis.portal.cluster;

import java.io.Serializable;

import lumis.portal.cluster.event.ClusterMessageReceivedEvent;
import lumis.portal.stability.StableMinor;

/**
 * Represents a message that may be sent through the cluster framework.
 * When received, the message generates a {@link ClusterMessageReceivedEvent}.
 *
 * @see IClusterManager#createClusterMessage(String, Serializable)
 * 
 * @version $Revision: 13082 $ $Date: 2011-05-27 16:03:12 -0300 (Fri, 27 May 2011) $
 * @since 4.1.0
 */
@StableMinor(version = "6.0", sinceVersion = "4.1")
public interface IClusterMessage extends IClusterTransmission
{
	/** 
	 * Returns the data sent in this message.
	 * @return the data sent in this message.
	 */
	public Serializable getData();

	/** The group where the data was sent to. */
	public String getGroup();
}